#define _CRT_SECURE_NO_WARNINGS
//#include <stdio.h>
//int main(void) {
//	printf("%s , %5.1s\n", "computer", "computer");
//	return 0;
//}

//#include <stdio.h>
//int main()
//{
//	int a = 1, b = 2, c = 3, d = 0;
//	if (a == 1 && b++ == 2)
//		if (b != 2 || c-- != 3)
//			printf("%d,%d,%d\n", a, b, c);
//		else
//			printf("%d,%d,%d\n", a, b, c);
//	else
//		printf("%d,%d,%d\n", a, b, c);
//	return 0;
//}

//int main()
//{
//	int year = 1009;
//	int* p = &year;
//	*p++;
//	return 0;
//}

#include<iostream>
#include<algorithm>
#include<vector>
#include<string>
using namespace std;
//int main()
//{
//		int n;
//		cin >> n;
//		int sum = 0;
//		vector<int> a;
//		a.resize(3 * n);
//		for (int i = 0; i < 3*n; i++)
//		{
//			cin >> a[i];
//		}
//
//		std::sort(a.begin(), a.end());
//
//		for (int i = 0;i<n;i++)
//		{
//			sum = sum + a[a.size() - 2 * (i + 1)];
//		}
//
//		cout << sum << endl;
//	
//}

//int main()
//{
//	string str1;
//	string str2;
//	getline(cin, str1);
//	getline(cin, str2);
//
//	int hash[256] = { 0 };
//
//	for (int i = 0; i < str2.size(); i++)
//	{
//		hash[str2[i]]++;
//	}
//
//	string str = "";
//	for (int i = 0; i < str1.size(); i++)
//	{
//		if (hash[str1[i]] == 0)
//		{
//			str += str1[i];
//		}
//	}
//	cout << str<<endl;
//	return 0;
//}

//int main()
//{
//	string str;
//	getline(cin, str);
//	
//	reverse(str.begin(), str.end());
//	auto start = str.begin();
//
//	while (start!=str.end())
//	{
//		auto end = start;
//		while (end!=str.end()&&*end!=' ')
//		{
//			end++;
//		}
//		reverse(start, end);
//		if (end != str.end())
//		{
//			start = end + 1;
//		}
//		else
//		{
//			start = end;
//		}
//	}
//	cout << str.c_str() << endl;
//	return 0;
//}

int main()
{
	int n;
	cin >> n;
	vector<int> a;
	a.resize(n+1);
	a[n] = 0;
	for (int i = 0; i < n; i++)
	{
		cin >> a[i];
	}
	int i = 0;
	int count = 0;
	while (i<n)
	{
		if (a[i] < a[i + 1])
		{
			while (i<n&&a[i]<=a[i+1])
			{
				i++;
			}
			count++;
			i++;
		}
		else if (a[i] == a[i + 1])
		{
			i++;
		}
		else
		{
			while (i < n && a[i] >= a[i + 1])
			{
				i++;
			}
			count++;
			i++;
		}
	}
	cout << count << endl;
	return 0;
}